home *** CD-ROM | disk | FTP | other *** search
/ Libris Britannia 4 / science library(b).zip / science library(b) / PROGRAMM / PASCAL / 1463.ZIP / DRAW-2D.ARC / LEV3OPT.PAS < prev    next >
Pascal/Delphi Source File  |  1986-11-29  |  3KB  |  102 lines

  1. PROCEDURE LEV3OPT;
  2.    VAR
  3.      K,KODE:INTEGER;
  4.      MSG:SCRLINE;
  5.      T:CHAR;
  6.    BEGIN
  7.      CASE OPTION OF
  8.    0: IF OBJPTR <= MAXSIZE THEN DRAWOBJ ELSE RING2;
  9.    1: BEGIN    (* SELECT-MODE *)
  10.         IF (BUTTON1) OR (BUTTON2) THEN
  11.           BEGIN
  12.              MSG := 'Enter Mode (1-ENTIRE DRAWING  2-AREA 3-OBJECT) <1> :';
  13.              T := ASKCHAR(24,2,0,MSG,'1','3','1');
  14.              MNUM := ORD(T) - 48;
  15.              CASE MNUM OF
  16.              1: BEGIN    END;
  17.              2: BEGIN
  18.                   SELAREA(K);
  19.                   IF K <> 0 THEN
  20.                     BEGIN
  21.                       MNUM := 1;
  22.                       MSG := 'No Object(s) selected -- press any key ';
  23.                       T := ASKCHAR(24,2,1,MSG,' ',' ','Y');
  24.                     END;
  25.                 END;
  26.              3: BEGIN
  27.                   SELOBJ(K);
  28.                   IF K <> 0 THEN
  29.                     BEGIN
  30.                       MNUM := 1;
  31.                       MSG := 'No Object(s) selected -- press any key ';
  32.                       T := ASKCHAR(24,2,1,MSG,' ',' ','Y');
  33.                     END;
  34.                 END;
  35.              END; (*CASE*)
  36.            STATUS2;
  37.           END;
  38.       END;
  39.    2: BEGIN    (* ERASE *)
  40.       IF (BUTTON1) OR (BUTTON2) THEN
  41.        BEGIN
  42.         CASE MNUM OF
  43.       1:BEGIN         (* CLEAR *)
  44.         MSG := 'Save Current Drawing (Y/N) <Y> ?';
  45.         T := ASKCHAR(24,2,1,MSG,' ',' ','Y');
  46.         IF T <> 'N' THEN SAVEFILE;
  47.         M1 := 2;
  48.         MOUSE(M1,M2,M3,M4);          (* HIDE MOUSE CURSOR *)
  49.         CLS;
  50.         OBJPTR := 1;
  51.         STATUS1;
  52.         STATUS2;
  53.         MENU(LEV);
  54.         M1 := 1;                     (* SHOW MOUSE *)
  55.         MOUSE(M1,M2,M3,M4);
  56.         END;
  57.       2:DELAREA;
  58.       3:DELOBJ;
  59.         END; (*CASE*)
  60.        END;
  61.       END;
  62.    3: BEGIN   (* MERGE *)
  63.         IF (BUTTON1) OR (BUTTON2) THEN
  64.           BEGIN
  65.             MSG := 'Save Current Drawing (Y/N) <Y> ?';
  66.             T := ASKCHAR(24,2,1,MSG,' ',' ','Y');
  67.             IF T <> 'N' THEN SAVEFILE;
  68.             MERGEDR(K);
  69.             IF K = 1 THEN
  70.                BEGIN
  71.                  MSG := 'No Merge file -- press any key ';
  72.                  T := ASKCHAR(24,2,1,MSG,' ',' ','Y');
  73.                END;
  74.             IF K = 2 THEN
  75.                BEGIN
  76.                  MSG := 'Not Enough Room to Merge file -- press any key ';
  77.                  T := ASKCHAR(24,2,1,MSG,' ',' ','Y');
  78.                END;
  79.             M1 := 2;                     (* HIDE MOUSE *)
  80.             MOUSE(M1,M2,M3,M4);
  81.             REDRAW;
  82.             M1 := 1;                     (* SHOW MOUSE *)
  83.             MOUSE(M1,M2,M3,M4);
  84.           END;
  85.       END;
  86.    4: BEGIN       (* RE-DRAW *)
  87.         IF (BUTTON1) OR (BUTTON2) THEN
  88.            BEGIN
  89.              M1 := 2;                     (* HIDE MOUSE *)
  90.              MOUSE(M1,M2,M3,M4);
  91.              REDRAW;
  92.              M1 := 1;                     (* SHOW MOUSE *)
  93.              MOUSE(M1,M2,M3,M4);
  94.            END;
  95.       END;
  96.    8: IF (BUTTON1) OR (BUTTON2) THEN
  97.          BEGIN
  98.            LEV := 1;
  99.            MENU(LEV);
  100.          END;
  101.      END; (*CASE*)
  102.    END;